package cn.tedu.reflect;

import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;

//反射 注解方法
public class Test4 {
    public static void main(String[] args) throws Exception {
        Class c = Hello.class;
        //TODO 获取所有方法
        Method[] ms = c.getMethods();
        Object oo = c.newInstance();
        //遍历数组，获取每个方法m
        for(Method m:ms){
            //判断谁有注解---参数是注解类型的Class对象
            Deprecated d = m.getAnnotation(Deprecated.class);
            //判断谁有注解运行谁
            if(d!=null){
                m.invoke(oo);
            }
        }
    }
}
class Hello{
    @Deprecated
    public void test(){
        System.out.println("test...");
    }
//    @Deprecated
    public void show(){
        System.out.println("show...");
    }
}
